]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
index Source objects using the associated channel path
authorGuillaume Desmottes <guillaume.desmottes@collabora.co.uk>
Wed, 9 Feb 2011 09:40:24 +0000 (10:40 +0100)
committerGuillaume Desmottes <guillaume.desmottes@collabora.co.uk>
Wed, 16 Feb 2011 09:10:26 +0000 (10:10 +0100)
js/ui/telepathyClient.js

index 184c46bf663e5f8253958e2127db3fbedf4b10e6..73d8ec37ce5978807ddaa016925f66d0d141ce03 100644 (file)
@@ -42,6 +42,7 @@ function Client() {
 Client.prototype = {
     _init : function() {
         this._accounts = {};
+        // channel path -> Source
         this._sources = {};
 
         // Set up a SimpleObserver, which will call _observeChannels whenever a
@@ -68,7 +69,6 @@ Client.prototype = {
     _observeChannels: function(observer, account, conn, channels,
                                dispatchOp, requests, context) {
         let connPath = conn.get_object_path();
-
         let len = channels.length;
         for (let i = 0; i < len; i++) {
             let channel = channels[i];
@@ -98,15 +98,15 @@ Client.prototype = {
                             return;
 
                         /* We got the TpContact */
-                        if (this._sources[connPath + ':' + targetHandle])
+                        if (this._sources[chan.get_object_path()])
                             return;
 
                         let source = new Source(account, conn, chan, contacts[0]);
 
-                        this._sources[connPath + ':' + targetHandle] = source;
+                        this._sources[chan.get_object_path()] = source;
                         source.connect('destroy', Lang.bind(this,
                             function() {
-                                delete this._sources[connPath + ':' + targetHandle];
+                                delete this._sources[chan.get_object_path()];
                             }));
                     }));
         }